home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / NEW / A-Newest / TORPET.d64 / list formater (.txt) < prev    next >
Commodore BASIC  |  2009-10-12  |  4KB  |  116 lines

  1. 140 INPUT"TESTING,VIDEO:";TE,VI
  2. 150 GOSUB1000:GOSUB2000:GOSUB3000
  3. 160 IFVI=0THENPRINT:PRINT:PRINT:PRINT"COMMENTS: "
  4. 170 IFVI=0THENPRINT#4:CLOSE4
  5. 180 POKE45,PEEK(43):POKE46,PEEK(44):POKE43,PEEK(251):POKE44,PEEK(252):CLR:END
  6. 1000 REM SET UP TOKENS
  7. 1030 IFTESTINGTHENPRINT"SETTING UP TOKENS"
  8. 1040 DIMTKN$(128):FORI=1TO75:READTKN$(I):NEXT
  9. 1045 TKN$(128)=CHR$(123)+"PI"+CHR$(125)
  10. 1050 DIMRP$(255)
  11. 1060 FORI=5TO31:READRP$(I):NEXT:FORI=129TO159:READRP$(I):NEXT
  12. 1070 RETURN
  13. 1130 DATA  END,FOR,NEXT,DATA,INPUT#,INPUT,DIM,READ,LET,GOTO
  14. 1140 DATA  RUN,IF,RESTORE,GOSUB,RETURN,REM,STOP,ON,WAIT,LOAD
  15. 1150 DATA  SAVE,VERIFY,DEF,POKE,PRINT#,PRINT,CONT,LIST,CLR,CMD
  16. 1160 DATA  SYS,OPEN,CLOSE,GET,NEW,TAB(,TO,FN,SPC(,THEN
  17. 1170 DATA  NOT,STEP,+,-,*,/,^,AND,OR,>
  18. 1180 DATA  =,<,SGN,INT,ABS,USR,FRE,POS,SQR,RND
  19. 1190 DATA  LOG,EXP,COS,SIN,TAN,ATN,PEEK,LEN,STR$,VAL
  20. 1200 DATA  ASC,CHR$,LEFT$,RIGHT$,MID$
  21. 1300 DATA WHT,,,DISC,ENSC,,,,RTN,LC,,,CSRD,RVS,HOME,DEL,,,,,,,,RED,CSRR,GRN,BLU
  22. 1310 DATA ORNG,,,,F1,F3,F5,F7,F2,F4,F6,F8,SRTN,UC,,BLK,CSRU,RVSO,CLR,INST,BRWN
  23. 1320 DATA LTRD,GR1,GR2,LTGRN,LTBLU,GR3,PUR,CSRL,YEL,CYN
  24. 2000 REM GET HEADINGS
  25. 2030 IFVI=0THENINPUT"TITLE: ";TT$:INPUT"NAME  : ";FI$:INPUT"DATE  :";DA$
  26. 2035 IFVI=0THENINPUT"SECONDARY ADDRESSES: ";SA(1),SA(2)
  27. 2040 RETURN
  28. 3000 REM PRINT THE LISTING
  29. 3050 IFVIDEOTHENPRINT"[147]"
  30. 3060 IFVI=0THENOPEN4,4,SA(1):CMD4:PRINT:PRINTTT$:PRINTFI$SPC(60-LEN(TT$))DA$:LC=3
  31. 3065 IFVI=0THENPRINT#4:CLOSE4:OPEN4,4,SA(2):CMD4
  32. 3070 IFTESTINGTHENPRINT"MAIN LINE."
  33. 3080 IN=0:TN=0:LI$="":SRF=0:PB=PEEK(252)*256+PEEK(251)
  34. 3081 NB=PEEK(43)+PEEK(44)*256-PB-1
  35. 3090 GOSUB4000:IFEOP=0THEN3090
  36. 3100 RETURN
  37. 4000 REM PRINT ONE NUMBERED LINE
  38. 4040 LP=0:TN=0:QF=0:RF=0:NX=0:DF=0
  39. 4045 IFPSTHENGOSUB7000
  40. 4050 GOSUB6000:X=BY:GOSUB6000:X=BY*256+X:NB=NB-2:IFTESTINGTHENPRINT"MEMPTR= "X
  41. 4060 IFTESTINGTHENPRINT"NB= ";NB
  42. 4070 IFNB<1THENEOP=1:RETURN
  43. 4080 GOSUB6000:X=BY:GOSUB6000:LNE=X+BY*256:NB=NB-2:IFTESTINGTHENPRINT"LINE #= "LNE
  44. 4090 IFTESTINGTHENPRINT"NB= ";NB
  45. 4100 IFNB<1THENEOP=1:RETURN
  46. 4110 GOSUB6000:NB=NB-1:IFBY=0THENRETURN
  47. 4114 IFBY<128THEN4135
  48. 4115 IFTK$(BY-127)="REM"ANDSRFTHENGOSUB7100
  49. 4120 IFTK$(BY-127)="REM"ANDSRF=0THENGOSUB7100:CT=0:SRF=1:GOTO4140
  50. 4130 IFTK$(BY-127)<>"REM"ORSRF=0THENGOSUB7100:CT=0:SRF=0:GOTO4140
  51. 4135 GOSUB7100:CT=0:SRF=0
  52. 4140 PRINTRIGHT$("     "+STR$(LNE),5);:CT=5:GOTO4160
  53. 4150 GOSUB6000:NB=NB-1:IFBY=0THENCT=0:RETURN
  54. 4160 LP=LP+1
  55. 4165 IFCT>79THENGOSUB7000
  56. 4170 IFBY>127ANDQF=0THENGOSUB5000:GOTO4150
  57. 4180 IFBY=32ANDQF=0ANDRF=0ANDDF=0THEN4150
  58. 4200 IFCT<8+IN+TNTHENPRINTSPC(8+IN+TN-CT);:CT=8+IN+TN
  59. 4220 IFLP=1ANDRF=0ANDTF=0THENPRINTSPC(8+IN+TN-CT):CT=8+IN+TN
  60. 4224 IFLP<>1ORRF>0ORTF=0THEN4230
  61. 4225 IFBY>=48ANDBY<=57THENPRINTSPC(8+TN+IN-CT)"GOTO ";:LP=LP+5:CT=8+IN+TN+5
  62. 4230 IFBY=ASC(":")ANDQF=0THENPRINT" ";:NX=0:CT=CT+1
  63. 4235 IFCT>79THENGOSUB7000
  64. 4240 IFLP=1ANDTFTHENPRINTSPC(8+IN+TN-CT);:CT=8+IN+TN
  65. 4250 IFLP=1ANDBY=32THEN4150
  66. 4253 IFBY>31ANDBY<96OR(BY>31ANDBY<128ORBY>191ANDBY<224)AND(SA(2)>=6)THEN4262
  67. 4255 IFRP$(BY)>""THEN4259
  68. 4256 S$=MID$(STR$(BY),2):IFCT>79-LEN(S$)-1THENGOSUB7000
  69. 4257 PRINTCHR$(123)S$CHR$(125);:CT=CT+LEN(S$)+2:GOTO4270
  70. 4259 IFCT>79-LEN(RP$(BY))-1THENGOSUB7000
  71. 4260 PRINTCHR$(123)RP$(BY)CHR$(125);:CT=CT+LEN(RP$(BY))+2
  72. 4261 GOTO4270
  73. 4262 PRINTCHR$(BY);:CT=CT+1:IFCT>79THENGOSUB7000
  74. 4270 IFBY=34THENQF=1-QF
  75. 4275 IFCT>79THENGOSUB7100
  76. 4276 IFBY<>ASC(",")ORNX=0THEN4280
  77. 4277 IFTN=0ORLI$="F"THENIN=IN-4
  78. 4278 LP=1:GOSUB7100:PRINTSPC(8+IN+TN)"(NEXT) ";:CT=8+IN+TN+7
  79. 4280 IFBY<>ASC(":")ORQFTHEN4150
  80. 4285 DF=0
  81. 4290 GOSUB6000:NB=NB-1:IFBY=0THENGOSUB7100:CT=0:RETURN
  82. 4300 IFBY=ASC(":")THEN4160
  83. 4310 GOSUB7100:LP=1
  84. 4320 GOTO4170
  85. 5000 REM PRINT A TOKEN'S MEANING
  86. 5030 TF=0
  87. 5040 IFLP>1THENPRINT" ";:CT=CT+1
  88. 5045 IFCT>79THENGOSUB7000
  89. 5050 IFTK$(BY-127)="NEXT"THENNX=1:IFTN=0ORLI$="F"THENIN=IN-4
  90. 5060 IFLP=1THENPRINTSPC(8+IN+TN-CT);:CT=8+IN+TN
  91. 5065 IFCT>79-LEN(TKN$(BY-127))THENGOSUB7000
  92. 5066 IFCT<8+IN+TNTHENPRINTSPC(8+IN+TN-CT);:CT=8+IN+TN
  93. 5067 IFTK$(BY-127)=""THENPRINTCHR$(123)MID$(STR$(BY),2)CHR$(125)" ";:CT=CT+5:GOTO5074
  94. 5070 PRINTTKN$(BY-127)" ";:CT=CT+LEN(TKN$(BY-127))+1
  95. 5074 PS=0:IFTN>0THEN5080
  96. 5075 IFTK$(BY-127)="GOTO"ORTK$(BY-127)="RETURN"ORTK$(BY-127)="END"THENPS=1
  97. 5076 IFTK$(BY-127)="RUN"ORTK$(BY-127)="STOP"THENPS=1
  98. 5080 IFTK$(BY-127)="FOR"THENIN=IN+4:LI$="F":RETURN
  99. 5090 IFTK$(BY-127)="THEN"THENGOSUB7000:TN=TN+4:LP=0:TF=1:LI$="T":RETURN
  100. 5100 IFTK$(BY-127)="REM"THENRF=1
  101. 5105 IFTK$(BY-127)="DATA"THENDF=1
  102. 5110 RETURN
  103. 6000 REM GET NEXT BYTE OF PROGRAM
  104. 6030 IFTESTINGTHENPRINT"*";
  105. 6040 BY=PEEK(PB):PB=PB+1:RETURN
  106. 7000 PRINT:LC=LC+1:IFLC>61ANDVI=0ANDTE=0THENPRINT:PRINT:PRINT:PRINT:LC=0
  107. 7003 GETX$:IFX$="[133]"THEN170:REM F1
  108. 7004 IFVI=0THENCMD4
  109. 7005 PRINTSPC(8+IN+TN);:CT=8+IN+TN
  110. 7010 RETURN
  111. 7100 PRINT:LC=LC+1:IFLC>61ANDVI=0ANDTE=0THENPRINT:PRINT:PRINT:PRINT:LC=0
  112. 7103 GETX$:IFX$="[133]"THEN170:REM F1
  113. 7104 IFVI=0THENCMD4
  114. 7105 CT=0
  115. 7110 RETURN
  116.